package cn.botter.subject.infra.basic.es;

import lombok.Data;
import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.search.fetch.subphase.highlight.HighlightBuilder;
import org.elasticsearch.search.sort.SortOrder;

import java.io.Serializable;

/**
 * @BelongsProject: bo-club
 * @BelongsPackage: cn.botter.subject.infra.basic.es
 * @Author: 爱写Bug的Botter
 * @CreateTime: 2025-04-03:20:48
 * @Description: 这是一个es的搜索类
 * @Version: 1.0
 */
@Data
public class EsSearchRequest implements Serializable {
    /**
     * 查询条件
     */
    private BoolQueryBuilder bq;
    /**
     * 字段
     */
    private String[] fields;
    /**
     * 页数
     */
    private int from;
    /**
     * 条数
     */
    private int size;
    /**
     * 快照
     */
    private Boolean needScroll;
    /**
     * 快照的缓存时间
     */
    private Long minutes;
    /**
     * 排序的名称
     */
    private String sortName;
    /**
     * 升序/降序规则
     */
    private SortOrder sortOrder;
    /**
     * 高亮设置
     */
    private HighlightBuilder highlight;

}
